Amazon CloudWatch による監視サービス
Amazon CloudWatch とは
Amazon CloudWatchは、様々な測定基準(メトリクス)をモニター/管理して/発行して、そのデータに基づくアラートを鳴らすことができるWebサービスです。モニタリングには、オペレーションやビジネスの決定上、より一層の信頼を得ることができるように、システムとアプリケーションのメトリクスを収集/分析/閲覧することができます。もちろん、AWSの各種サービスのメトリクスを取得することができます。はじめから多くのAWSに関するメトリクスが用意されていますので使ってみましょう。また、独自のメトリクスを作成し発行することも可能です。
CloudWatchコンソールを使えば、その他AWSサービスに用意されているメトリクスやユーザが定義したカスタムメトリクスの統計データについてビジュアルなグラフで表示することができます。
CloudWatchのアラーム機能は、自分で定義または指定したルールに基づいて自動的に通知を行ったりリソースの状態を変更することができます。例えば、Auto ScalingでAmazon EC2インスタンス数を動的に変更したり、Amazon SNSで通知したりです。
CloudWatchの一般的な用途は、自分のアプリケーションが正常で効率的に動作し続けているかチェックすることです。例えば、Amazon EC2のネットワークトラフィックがある閾値よりも下がっているとき、正常に動作しているということを知ることができます。日々のトラフィックを知ることができれば、どの程度の閾値が適当か、また、どの程度の数のEC2インスタンス数が適当か調整することができますね。アプリケーションの動作に問題があった時も過去の値を診断することによって問題の特定を容易にします。例えば、処理が遅くなったり、データベースの負荷が高まったり、応答が無かったり。
以下の図を見てください。CloudWatchとは言うならばメトリクスのリポジトリ(倉庫)です。リポジトリにAmazon EC2 などのメトリクスやカスタムメトリクスを登録して統計データを取得することができます。
まとめ
Amazon CloudWatchは、アプリケーションが正しく動作しているか監視するサービスです。あらかじめ用意されたメトリクスや独自に定義したカスタムメトリクスを駆使し、監視だけでなく設定した閾値に基づいて他サービスへのアラーム通知など連動した動作を設定できる賢いサービスであると感じで頂けたと思います。次回は、CloudWatchが始めから提供しているメトリクスについてご紹介する予定です。用法を理解して楽しく使いましょう〜